Spring Test
spring-test モジュールのこと
from
Spring 徹底入門 Spring Framework による Java アプリケーション開発
Spring Framework
上で動かすためのクラス (Controller や Service など) のテストを支援するモジュール
主に以下の機能を提供
JUnit
や
TestNG
といった
テスティングフレームワーク
上で
Spring
の
DI コンテナ
を動かす機能
トランザクション制御をテスト向けに最適化
アプリケーションサーバーを使わずに
Spring Web MVC
の動作を再現
テストデータをセットアップするための SQL の実行
Spring の RestTemplate
を使用した HTTP 通信に対するモック
Spring TestContext Framework
SpringJUnit4ClassRunner
DB アクセスのテストにあたって、
トランザクション境界
を
JUnit
のテストケースメソッドの呼び出し前に移動できる
テスト完了後にロールバックすることで、テストによるデータ変更の影響をなくす
ただし、これをやる場合には
JPA
や
Hibernate
を使った更新系のテストをする場合、永続コンテキストを明示的にフラッシュする必要
Spring Web MVC
のフレームワーク機能と結合した状態で Controller をテストする方法 :
MockMvc
Spring MVC Test HtmlUnit
のような、
HtmlUnit
との連携もある
from
Spring Boot 2 入門 ― 基礎から実演まで
Spring アプリケーション
をテストできるライブラリ・フレームワーク
JUnit
や
MockMvc
が組み込まれている